package com.smart.campus.school.domain;

import java.util.Date;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.smart.campus.common.annotation.Excel;
import com.smart.campus.common.core.domain.BaseEntity;

/**
 * 缴费单对象 sc_payment_bill
 * 
 * @author Zhihe.Li
 * @date 2020-05-13
 */
public class ScPaymentBill extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 用户名称 */
    @Excel(name = "用户名称")
    private String userName;

    /** 费用类型：1学费 2杂费 */
    @Excel(name = "费用类型：1学费 2杂费")
    private Integer paymentCategory;

    /** 费用 */
    @Excel(name = "费用")
    private Long amount;

    /** 状态  0未缴纳 1已缴纳 */
    @Excel(name = "状态  0未缴纳 1已缴纳")
    private Integer status;

    /** 学年 */
    @Excel(name = "学年", width = 30)
    private Integer schoolYear;

    /** 学期 */
    @Excel(name = "学期")
    private Long term;

    /** 缴费时间 */
    @Excel(name = "缴费时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date paymentTime;

    /** 缴费方式 1 微信 2 支付宝 */
    @Excel(name = "缴费方式 1 微信 2 支付宝")
    private Integer paymentType;

    /** 缴费单号 */
    @Excel(name = "缴费单号")
    private String paymentNo;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setPaymentCategory(Integer paymentCategory) 
    {
        this.paymentCategory = paymentCategory;
    }

    public Integer getPaymentCategory() 
    {
        return paymentCategory;
    }
    public void setAmount(Long amount) 
    {
        this.amount = amount;
    }

    public Long getAmount() 
    {
        return amount;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }

    public void setTerm(Long term) 
    {
        this.term = term;
    }

    public Long getTerm() 
    {
        return term;
    }
    public void setPaymentTime(Date paymentTime) 
    {
        this.paymentTime = paymentTime;
    }

    public Date getPaymentTime() 
    {
        return paymentTime;
    }
    public void setPaymentType(Integer paymentType) 
    {
        this.paymentType = paymentType;
    }

    public Integer getPaymentType() 
    {
        return paymentType;
    }
    public void setPaymentNo(String paymentNo) 
    {
        this.paymentNo = paymentNo;
    }

    public String getPaymentNo() 
    {
        return paymentNo;
    }

    public Integer getSchoolYear() {
        return schoolYear;
    }

    public void setSchoolYear(Integer schoolYear) {
        this.schoolYear = schoolYear;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("userName", getUserName())
            .append("paymentCategory", getPaymentCategory())
            .append("amount", getAmount())
            .append("status", getStatus())
            .append("schoolYear", getSchoolYear())
            .append("term", getTerm())
            .append("paymentTime", getPaymentTime())
            .append("paymentType", getPaymentType())
            .append("paymentNo", getPaymentNo())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
